package com.krisyu.statePattern.sp1;

/**
 * @Author: Kris
 * @Date: 2022/1/9 - 01 - 09 - 22:16
 * @Description: 表示过渡到停止状态时， 在停止状态下，电梯要做的动作。
 * @version: 1.0
 */
public class StoppingState extends LiftState{
    @Override
    public void open() {
        System.out.println("----------电梯已停止了，通知电梯准备打开了------------\n\n");
        super.context.setLiftState(Context.openingState);
        super.context.getLiftState().open();
    }

    @Override
    public void close() {
        System.out.println("-----------电梯停止了，你再关门，不就是憋王八嘛 🤭-----------\n\n");
    }

    @Override
    public void run() {
        System.out.println("------------电梯正停止， 通知电梯准备开始运行。----------\n\n");
        super.context.setLiftState(Context.runningState);
        super.context.getLiftState().run();
    }

    @Override
    public void stop() {
        // 执行具体的电梯停止操作逻辑。
        System.out.println("-----------!!!电梯要停止了!!!-----------\n\n");

    }
}
